package com.example.springboot159.bean.dataSync;

public class DataBase {
    //子计划id
    private String item_id;

    //icon名称
    private String title;

    //发布的省份 多个使用英文逗号隔开
    private String province_id;

    //子计划id
    private String id;

    // icon名称
    private String name;

    //版本号 发布版本，多个使用英文逗号隔,例:“1_7.5.0,2_7.5.5”，支持全版本默认传“10_10” 轻渠道组装   机型_版本号, 全版本对应不区分版本号
    private String client_ver;

    //跳转类型 1：h5原生跳转；2：http/https跳转
    //客户端原生-1  其余类型-2
    private Integer  jump_type;

    //是否登录 当跳转类型为H5类型必填；0:无参；1:H5+URL传参；2:SSO认证
    private String  type_flag;

    //状态 51：上架；52：下架  轻渠道控制 上下线 同步app
    private String status;

    //登录标识 0:不需要登录；1:需要登录；2单点登录 传0
    private String login_flag;

    //数据类型 默认10表示服务
    private Integer data_type;

    //数据源类型 默认值1
    private Integer datasource_type;

    //市级ID 地市编码 app的地市编码 多个用逗号
    private String city_id;


    public String getItem_id() {
        return item_id;
    }

    public String getTitle() {
        return title;
    }

    public String getProvince_id() {
        return province_id;
    }

    public String getId() {
        return id;
    }

    public String getName() {
        return name;
    }

    public String getClient_ver() {
        return client_ver;
    }

    public Integer getJump_type() {
        return jump_type;
    }

    public String getType_flag() {
        return type_flag;
    }

    public String getStatus() {
        return status;
    }

    public String getLogin_flag() {
        return login_flag;
    }

    public Integer getData_type() {
        return data_type;
    }

    public Integer getDatasource_type() {
        return datasource_type;
    }

    public String getCity_id() {
        return city_id;
    }

    public DataBase() {
    }

    public static class Builder{

        public Builder() {
        }

        //子计划id
        private String item_id;

        //icon名称
        private String title;

        //发布的省份 多个使用英文逗号隔开
        private String province_id;

        //子计划id
        private String id;

        // icon名称
        private String name;

        //版本号 发布版本，多个使用英文逗号隔,例:“1_7.5.0,2_7.5.5”，支持全版本默认传“10_10” 轻渠道组装   机型_版本号, 全版本对应不区分版本号
        private String client_ver;

        //跳转类型 1：h5原生跳转；2：http/https跳转
        //客户端原生-1  其余类型-2
        private Integer  jump_type;

        //是否登录 当跳转类型为H5类型必填；0:无参；1:H5+URL传参；2:SSO认证
        private String  type_flag;

        //状态 51：上架；52：下架  轻渠道控制 上下线 同步app
        private String status;

        //登录标识 0:不需要登录；1:需要登录；2单点登录 传0
        private String login_flag;

        //数据类型 默认10表示服务
        private Integer data_type;

        //数据源类型 默认值1
        private Integer datasource_type;

        //市级ID 地市编码 app的地市编码 多个用逗号
        private String city_id;



        public Builder item_id(String item_id){
            this.item_id = item_id;
            return this;
        }



        public Builder title(String title){
            this.title = title;
            return this;
        }

        public Builder province_id(String province_id){
            this.province_id = province_id;
            return this;
        }

        public Builder id(String id){
            this.id = id;
            return this;
        }

        public Builder name(String name){
            this.name = name;
            return this;
        }

        public Builder client_ver(String client_ver){
            this.client_ver = client_ver;
            return this;
        }
        public Builder jump_type(Integer jump_type){
            this.jump_type = jump_type;
            return this;
        }

        public Builder type_flag(String type_flag){
            this.type_flag = type_flag;
            return this;
        }
        public Builder status(String status){
            this.status = status;
            return this;
        }
        public Builder login_flag(String login_flag){
            this.login_flag = login_flag;
            return this;
        }
        public Builder data_type(Integer data_type){
            data_type = data_type;
            return this;
        }

        public Builder datasource_type(Integer datasource_type){
            this.datasource_type = datasource_type;
            return this;
        }

        public Builder city_id(String city_id){
            this.city_id = city_id;
            return this;
        }


        public DataBase build(){
            return new DataBase(this);
        }

    }

    private DataBase(Builder builder) {
        this.item_id = builder.item_id;
        this.title = builder.title;
        this.province_id = builder.province_id;
        this.id = builder.id;
        this.name = builder.name;
        this.client_ver = builder.client_ver;
        this.jump_type = builder.jump_type;
        this.type_flag = builder.type_flag;
        this.status = builder.status;
        this.login_flag = builder.login_flag;
        this.data_type = builder.data_type;
        this.datasource_type = builder.datasource_type;
        this.city_id = builder.city_id;
    }


}
